package com.xinzhidi.web.bigscreen.mapper;

import com.xinzhidi.web.bigscreen.domain.bo.BigScreenBo;
import com.xinzhidi.web.bigscreen.domain.po.LineChartPo;
import com.xinzhidi.web.bigscreen.domain.vo.*;
import com.xinzhidi.web.netty.entity.householdHeat.ReadData;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

@Repository
public interface BigScreenMapper {
    List<DeviceStatisticsVo> deviceStatistics(BigScreenBo bigScreenBo);

    DataOverviewVo  dataOverview(BigScreenBo bigScreenBo);

    WarningInfoVo warningInformation(BigScreenBo bigScreenBo);

    List<BuildInfoListVo> buildInfoList(BigScreenBo bigScreenBo);

    List<LineChartDataVo> lineChart(LineChartPo po);

    List<Map<String , Object>> getDailyConsumption(@Param("plotId") Long plotId , @Param("protocolType") String protocolType ,
                                                   @Param("type") Integer type , @Param("equipmentIds") List<Long> equipmentIds);

    BigDecimal getTotalFlow(Long plotId);

    ReadData getHeatData(Long plotId);

    List<WarnTypeVo> warnType(Long plotId);

    List<EnergyDataListVo> energyData(BigScreenBo bigScreenBo);

    List<BigDecimal> getHeatOrCold(BigScreenBo bigScreenBo);
}
